{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "from yellowbrick.classifier.confusion_matrix import *\n",
    "from sklearn.datasets import load_digits\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.linear_model import LogisticRegression\n",
    "from sklearn.preprocessing import LabelEncoder"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAgoAAAGFCAYAAACcz9vFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XlYlXX+//HXYZUAM9ytNEstlNQ0NUM0oGlygbSZ1NKU\nFpeM0cxxqa8KiuaaY1qaWmOOa465pVm5a7nPqEjikoqpuYUborKcc//+6OcZDT/hTMJth+fjurou\nzn3uc5/3gWPnyX3f5+CwLMsSAADADXjZPQAAALh9EQoAAMCIUAAAAEaEAgAAMCIUAACAEaEAAACM\nCAXg/zt69KgeeeSRW7a9lStXasiQIb+6zpo1a/Tee+/d9Prjx4/XY489pmeeeUbPPPOMYmNjFRUV\npWHDhul2fadzp06d9P3339+y7Z08eVL9+vVTTEyMYmNj9dxzz2nFihW/aZupqal68skn1apVKx09\nevS/vv17772nhQsX/qYZrtq8ebMefPBB9enTJ891L7744k09R699Xv3SzTzPgGv52D0A4Kmio6MV\nHR39q+vs2rVL58+fv+n1JalZs2YaOHCg+/L58+cVGxurRo0aKSIi4rcNXQCmTJlyy7Z15swZtW3b\nVj169NCwYcPkcDi0Z88evfTSSwoICFB4ePj/tN2VK1eqQYMGGjp06P90+x49evxPtzMpXbq01qxZ\no8uXLysgIECSdOzYMR06dOimbn/t8+qXbvZ5BlxFKAA3ISMjQ4MGDdKePXvkcDgUERGhN998Uz4+\nPlq7dq1Gjx4tLy8vhYaGasOGDZo1a5a2bNmir776SpMmTdLXX3+tiRMnyuFwyNvbW3369JGfn5/m\nzJkjp9Op4OBgVapUyb3+6dOnlZCQoIMHD8rLy0tt27ZVhw4dbjjbTz/9pCtXrujOO++UJB04cEBD\nhw7VuXPn5HQ69eKLL+rPf/6zJGny5MmaN2+eAgMD9eijj2rlypVatWqV+vXrp3PnzunIkSN64okn\n1KNHD40ePVpbt26V0+lU9erV1b9/fwUFBWnWrFmaM2eOfH195e/vr8GDB6tKlSrG5VFRUXrvvff0\n8MMP69NPP9X06dPl5eWlUqVKacCAAapcubL69eunoKAg7d27VydOnND999+vMWPGKDAw8LrHOmvW\nLNWpU0ctW7Z0L3vooYc0fvx4BQcHS5K2bdumkSNH6vLly/L19dUbb7yhxo0ba/78+Vq+fLm8vLx0\n+PBh+fr6asSIEdqzZ49mz54tp9OpK1euKDw83P1zkKT58+e7L2/btk3Dhw+Xy+WSJHXp0kV//OMf\n1a9fP1WtWlWvvPLKf33/1apVy/MzLVGihO69916tWLFCMTExkqSFCxcqJiZGc+bMkSRdunRJiYmJ\nSktL0/nz5xUYGKjRo0crIyMjz/Nq3rx5unz5soKCgtSqVSt99dVXeu+99/SnP/1JL7zwgtq1a6d5\n8+Zp2rRpmjt3rjtOAEmSBcCyLMs6cuSIVbt27Rte16dPHyspKclyuVxWVlaW9fLLL1uTJk2yzpw5\nY9WvX99KTU21LMuy5s+fb1WrVs06cuSI9dlnn1mdO3e2LMuyoqOjre3bt1uWZVnr16+3xo8fb1mW\nZY0bN84aNGiQZVnWdeu//vrr1ogRIyzLsqwLFy5YzZs3t9LS0qxx48ZZDRo0sGJjY62nnnrKql+/\nvhUXF2ctW7bMsizLysnJsZo1a2alpKS4b9u0aVNr+/bt1rp166w//vGP1vnz5y2Xy2W99dZbVmRk\npGVZltW3b1+rY8eO7sc7fvx4a/jw4ZbL5bIsy7LeffddKyEhwcrNzbVq1KhhnTx50rIsy1qwYIE1\nZ84c43LLsqzIyEgrOTnZ2rBhg/Xkk09a6enp7sfbtGlTy+VyWX379rXatGljZWVlWdnZ2VbLli2t\nefPm5fk5dOnSxZoxY4bxZ3jmzBmrYcOG1o4dOyzLsqx9+/ZZ9evXt3744Qfrs88+s+rWrWsdP37c\nsizLGjx4sNWnT59f/Tn88nKHDh2sJUuWWJZlWampqVZiYqL7+/fRRx/9z/d/rU2bNlnNmze3vvzy\nS+uVV15xL2/evLmVkpLifo4uW7bMSkpKcl8/YMAAa/DgwTd8PPXq1bMyMjLyPJ49e/ZY9evXt9as\nWWM9/vjj1oEDB4zfWxRd7FEAbsK6des0e/ZsORwO+fn5qW3btpo2bZoqV66sBx54QA899JAkqVWr\nVjc8/tu8eXPFx8erSZMmCg8PV6dOnX71/jZs2KDevXtLkoKDg7VkyRL3dVcPPWRnZyspKUn79+9X\n48aNJUlpaWn64Ycf9Pbbb7vXv3Llinbv3q2DBw/q6aefVvHixSVJ7dq106ZNm9zr1a1b1/31mjVr\nlJGRoQ0bNkiScnJyVLJkSXl7e+vpp59W27Zt9cQTTyg8PFwxMTHG5ddav369mjVrppCQEEnSs88+\nq6FDh7rPCYiIiJCfn58kqVq1ajfcde5wOH71XIzk5GRVrFhRtWrVkiRVrVpVderU0ZYtW+RwOFSj\nRg2VK1dOklS9enUtX77c/EO4gaZNm2rw4MFatWqVHn/8cb355psFdv+RkZFKTExUenq60tLSdP/9\n97v3GknS008/rXvvvVfTp0/X4cOHtWXLFuP5Cw8++KCCgoJuuDw+Pl5dunTR8OHDdf/99/9X3w8U\nDZzMCNyEq7uar72cm5srb2/vPC9cXl55/1n17NlTs2fPVlhYmObPn682bdrk2ea1fHx85HA43JeP\nHDmiixcvXreOn5+fBgwYoMzMTI0aNUqS5HQ6Vbx4cS1atMj939y5c/WnP/1JPj4+183q7e193fbu\nuOOO6x7f22+/7d7GP//5T/fJcaNHj9aHH36oihUrasqUKYqPj//V5Vfd6AXesizl5uZKkooVK+Ze\nbgqC2rVra8eOHXmWz5kzR1OnTr3h9/S/vY9fLs/JyXF/3bZtWy1evFjh4eH65ptvFBsbq4yMDPf1\nt+L+r/Lz89NTTz2lJUuWaOHChWrVqtV118+aNUv/93//p2LFiikmJkYtWrQwbu/an+0v7d+/X6VK\nldLOnTuN66BoIxSAm9CoUSPNnDlTlmUpOztbc+fO1eOPP646deooLS1Ne/bskSR99dVXunDhwnUv\n8rm5uYqKitKlS5f0/PPPKyEhQQcOHHCHxtUXkWs1bNhQn332maSfz4/o2LGj0tLS8qzn5+enhIQE\nffrpp/ruu+9UuXJl+fv7a9GiRZKk48ePq0WLFkpJSVGTJk309ddfu1/Y5s2bl+/jzc7Olsvl0oAB\nAzRmzBidOXNGTZo0UYkSJRQXF6c33nhDe/fuNS7/5Ta/+OILnTlzRpL02WefqUSJEqpUqdJN/xza\ntGmjLVu2aPHixe4XxZSUFI0bN07VqlVTrVq1dOjQISUnJ0v6+UVw69atql+//k3fR0hIiPbv36+s\nrCzl5uZq9erV7uvatm2r1NRUPfvss0pKStKFCxeu2/NxK+7/Wi1bttSCBQu0devWPCeqfvPNN2rV\nqpWee+45Va5cWatWrZLT6ZQk4/Pql77++mtt3rxZixcv1rfffvub3z0Cz8ShB+Aaly5dyrP7ds6c\nOerfv7+GDBmimJgY5eTkKCIiQl27dpWfn5/GjBmjvn37ysvLS2FhYfLx8bnuZDAfHx+9/fbb+utf\n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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10d9fc9b0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df = pd.read_csv('examples/data/occupancy/occupancy.csv')\n",
    "\n",
    "features = [\"temperature\", \"relative humidity\", \"light\", \"C02\", \"humidity\"]\n",
    "target = \"occupancy\"\n",
    "\n",
    "X = df[features]\n",
    "y = df[target]\n",
    "classes = [\"unoccupied\", \"occupied\"]\n",
    "le = LabelEncoder()\n",
    "le.fit(classes)\n",
    "X_train, X_test, y_train, y_test = tts(X, y, test_size=0.2)\n",
    "\n",
    "viz = ConfusionMatrix(LogisticRegression(), classes=classes, label_encoder =le)\n",
    "viz.fit(X_train, y_train)\n",
    "viz.score(X_test, y_test)\n",
    "viz.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\nyiuvJDg4GICEhITjnkq22WzlvpYgOTmZ+Ph4GjduDECDBg1o0qQJ69atw2az0ahRI2JiYgBo2LAh\nS5YsOfEiHMd1113HqFGj+Prrr2nVqhWPP/74Obv/tm3bMnLkSLKzs9mzZw/16tUrOysDcO2111Kr\nVi3effddfvnlF9atW3fC598vvPBCQkNDj3t5//796du3L+PHj6devXoV+vuQvwe9eE4s6fCp1yO/\nLikpISgo6JiisduP/d9g0KBBzJkzh8TERBYsWMDtt99+zG0eyeFwYLPZyr5OTU0lPz//qOsEBwcz\nfPhwCgoKePHFFwEoLS3F4/HwySeflP33/vvvc/PNN+NwOI7KGhQUdNTtVa1a9aj5nn766bLb+OCD\nD8pejDVhwgRef/114uPjeeONN+jfv3+5lx92vEI2DIOSkhIAQkJCyi4/UYFfdtllbNy48ZjL586d\ny9tvv33cv9OK3sdfLy8uLi77c48ePfj0009p3bo1K1eupFu3buTl5ZV9/2zc/2HBwcF06tSJhQsX\n8vHHH9O9e/ejvj979myeeeYZQkJC6Nq1K9dff/0Jb+/Itf2rnTt3Eh0dzaZNm054Hfl7U7GLJV1x\nxRW89957GIaB1+vl/fffp1WrVjRp0oQ9e/awbds2AL766ityc3OPKuWSkhLatWvHwYMHueOOO0hK\nSiIlJaXsF4PD/+gfqWXLlnz44YfAn8/v33PPPezZs+eY6wUHB5OUlMS8efPYsmULdevWxeVy8ckn\nnwCwd+9err/+ejZv3szVV1/N4sWLy4po/vz5J53X6/Xi8/kYPnw4EydOZN++fVx99dVERETQu3dv\nHnvsMbZv337Cy/96m59//jn79u0D4MMPPyQiIoLatWuf8jrcfvvtrFu3jk8//bSsxDZv3syUKVNI\nSEigcePG/PzzzyQnJwN/ltb3339P8+bNT/k+oqKi2LlzJ0VFRZSUlPDNN9+Ufa9Hjx5s3bqVm266\nidGjR5Obm3vUmYWzcf9HuvHGG/noo4/4/vvvj3lh5MqVK+nevTu33nordevW5euvv6a0tBTghI+r\nv1q8eDFr167l008/ZdWqVWf87gKxJp2Kl0rt4MGDx5zOnDt3LsOGDWPMmDF07dqV4uJirrzySvr1\n60dwcDATJ05kyJAh2O12EhMTcTgcR734yOFw8PTTT/PEE0+UHYk/99xzBAcH07JlSx599FGcTieN\n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\nXQghhAggfwElpXT+paUAVAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10d373978>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "digits = load_digits()\n",
    "X = digits.data\n",
    "y = digits.target\n",
    "\n",
    "X_train, X_test, y_train, y_test = train_test_split(X,y, test_size =0.2, random_state=11)\n",
    "X_train = X_train\n",
    "X_test = X_test\n",
    "y_train = y_train\n",
    "y_test = y_test\n",
    "\n",
    "model = LogisticRegression()\n",
    "classes = ['one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']\n",
    "mapping = {'zero': '0', 'one': '1', 'two': '2', 'three': '3', 'four': '4', 'five': '5',\n",
    "           'six': '6', 'seven': '7', 'eight': '8', 'nine': '9'}\n",
    "cm = ConfusionMatrix(model, classes=classes, label_encoder = mapping)\n",
    "cm.fit(X_train, y_train)\n",
    "cm.score(X_test, y_test)\n",
    "cm.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
